1. Field of the Invention
The invention is related to the field of disk drive systems, and in particular, to servo data detection with improved phase shift tolerance.
2. Statement of the Problem
Disk drive systems store data on magnetic storage media such as a magnetic disk. The magnetic disk contains a series of circular tracks that span the surface of the disk. User data and servo data are encoded and written on the tracks of the disk, and are represented by magnetic transitions on the disk. The disk drive system uses the servo data to locate the user data.
The servo data is written in servo sectors at periodic locations on the tracks. The servo data includes sector number, track number, head number, and index bits. The user data is written between the servo sectors. When a read head from the disk drive system passes over one of the tracks, the read head generates a read signal. The disk drive system transfers the read signal to read channel circuitry. The read channel circuitry includes servo circuitry. The servo circuitry processes the read signal to detect the servo data. The servo circuitry uses the servo data to position the read head over the center of a track when the disk drive system is in a track following mode. The servo circuitry also uses the servo data to position the read head over a new track when the disk drive system is in seek mode.
Current servo circuitry is comprised of a matched filter system and a comparator. The matched filter system is comprised of eight matched filters. Each matched filter is programmed with a sixteen-bit Error Correcting Grey Code (ECGC). The matched filters receive samples taken from the read signal. The matched filters compare blocks of the samples to the sixteen-bit codes to generate weighted values. The comparator receives the eight weighted values and selects the highest weighted value. The comparator outputs a three-bit code based on which weighted value was selected. The three-bit code represents a translation of the sixteen-bit code that most closely matched the sample block passed to the matched filters. Thus, the servo circuitry selects the most likely three-bit code represented by the samples.
Occasionally a phase shift of the servo data occurs when the servo data is written to the disk. The magnetic transitions that represent the servo data ideally start at specific locations on the disk. Phase shifts occur when the magnetic transitions start before or after the specific locations. Phase shifts on successive tracks on the disk are sometimes referred to as xe2x80x9cshinglingxe2x80x9d. The phase shifts can be inconsequential or could be up to, or exceeding, one bit. A one-bit phase shift could cause the servo circuitry to detect an incorrect code from the samples. For example, suppose the servo data written on the disk starts with the bit pattern xe2x80x9c1 0 1 1 0 1xe2x80x9d. A one-bit forward phase shift in the servo data could cause the samples to represent the same bit pattern as xe2x80x9cx 1 0 1 1 0xe2x80x9d. A one-bit backward phase shift in the servo data could cause the samples to represent the same bit pattern as xe2x80x9c0 1 1 0 1 xxe2x80x9d. Unfortunately, the servo circuitry may not detect an appropriate match to the ECGCs when the above phase shifts occur causing the servo circuitry to output incorrect servo data. Therefore, the servo circuitry described above is susceptible to errors due to phase shifts in the servo data.
The invention helps to solve the above problems with servo circuitry that is substantially intolerant to phase shifts. The servo circuitry can detect servo data even when the servo data has phase shifted. The servo circuitry advantageously provides a disk drive system that is more reliable and has improved performance, especially during a seek operation.
In one aspect of the invention, the servo circuitry is comprised of a first servo detector system, a second servo detector system, and a first comparator. The first servo detector system receives samples taken from a read signal. The samples include servo data. The first servo detector system performs a first comparison by comparing the samples to a plurality of servo codes. The first servo detector system selects a first one of the plurality of servo codes based on the first comparison. The first servo detector system then indicates the first one of the plurality of servo codes as a first selected code. The first servo detector system transfers the first selected code to the first comparator.
The second servo detector system also receives the samples. The second servo detector system performs a second comparison by comparing a first shifted version of the samples to the plurality of servo codes. The second servo detector system could generate the first shifted version by shifting the samples by one bit. The second servo detector system selects a second one of the plurality of servo codes based on the second comparison. The second servo detector system then indicates the second one of the plurality of servo codes as a second selected code. The second servo detector system transfers the second selected code to the first comparator.
The first comparator receives the selected codes and performs a third comparison of the selected codes. The first comparator selects one of the selected codes based on the third comparison. The one of the selected codes represents the servo data.
In some examples, the servo circuitry further comprises a third servo detector system. The third servo detector also receives the samples. The third servo detector system performs a fourth comparison by comparing a second shifted version of the samples to the plurality of servo codes. The third servo detector system could generate the second shifted version by shifting the samples by two bits. The third servo detector system selects a third one of the plurality of servo codes based on the fourth comparison. The third servo detector system then indicates the third one of the plurality of servo codes as a third selected code. The third servo detector system transfers the third selected code to the first comparator. The first comparator includes the third selected code in the third comparison.
In another aspect of the invention, the servo circuitry is again comprised of the first servo detector system, the second servo detector system, and the first comparator. In this example, the first servo detector system performs the first comparison by comparing the samples to a plurality of first servo codes. The first servo detector system selects one of the plurality of first servo codes based on the first comparison. The first servo detector system then indicates the one of the plurality of first servo codes as the first selected code. The first servo detector system transfers the first selected code to the first comparator.
The second servo detector system performs the second comparison by comparing the samples to a plurality of second servo codes. The second servo codes could be same as the first servo codes shifted by one bit. The second servo detector system selects one of the plurality of second servo codes based on the second comparison. The second servo detector system then indicates the one of the plurality of second servo codes as the second selected code. The second servo detector system transfers the second selected code to the first comparator.
The first comparator receives the selected codes and performs the third comparison of the selected codes. The first comparator selects the one of the selected codes based on the third comparison. The one of the selected codes represents the servo data.
In some examples, the third servo detector performs the fourth comparison by comparing the samples to a plurality of third servo codes. The third servo codes could be same as the first servo codes shifted by two bits. The third servo detector system selects the one of the plurality of third servo codes based on the fourth comparison. The third servo detector system then indicates the one of the plurality of third servo codes as a third selected code. The third servo detector system transfers the third selected code to the first comparator. The first comparator includes the third selected code in the third comparison.
In another aspect of the invention, the first servo detector system is comprised of a first matched filter system and a second comparator. The second servo detector system is comprised of a second matched filter system and a third comparator. The third servo detector system is comprised of a third matched filter system and a fourth comparator. The matched filter systems can be programmed with 16-bit or 8-bit Error Correcting Grey Codes (ECGC).